package com.nbst.model.mes;

import java.util.Date;

import com.nbst.model.base.OrderBy;

/**
 * 
 * @ClassName:EndWork
 * @Description:EndWork信息
 * @author Ycy
 * @date 2018-11-14
 *
 */
public class EndWork extends OrderBy implements Comparable<EndWork> {
	private Integer id;

	// 开工表id
	private Integer fStartWorkId;

	// 完工时间
	private Date fDate;

	// 加工时间（分钟）
	private Integer fWorktime;

	// 加工数
	private Double fQty;

	// 良品数
	private Double fPassQty;

	// 工废数
	private Double fScrapQty;

	// 料废数
	private Double fForitemQty;

	// 丢失数
	private Double fQtyLost;

	// 返修数
	private Double fReworkQty;

	// 其他数
	private Double fOthQty;

	// 改制数
	private Double fRestructQty;

	// 上道工序质检良品数
	private Double fAuxOkQty;

	// 删除标志
	private Integer fClosed;

	// 更新时间
	private Date updateTime;

	// 不良品是否已经入库 0是 1否
	private Integer isStorage;

	// 报工类型 1手动报工 2自动报工
	private Integer fWorkType;

	// 开工人
	private String fWorker;

	/** 图号 */
	private String fChartNumber;

	/** 质检状态 */
	private Integer fQcStatus;

	/** 备注 */
	private String fNote;

	/** 设备 */
	private String fMachine;

	/** 派工单号 */
	private String fCode;

	/** 产品代码 */
	private String fNumber;

	/** 产品名称 */
	private String fName;

	/** 规格 */
	private String fModel;

	/** 工序号 */
	private Integer fOperSN;

	/** 工序名称 */
	private String fOper;

	/** 完工人 */
	private String fWorkerName;

	/** 工作中心 */
	private Integer fWorkShopId;

	/** 是否工序入库 */
	private Integer fIsOperInStock;

	/** 任务单编号 */
	private String fBillNo;

	/** 是否为最后一道工序 */
	private Integer fIsLastOper;

	/** 入库审核人 */
	private Integer fInStockCheckId;

	/** 入库审核时间 */
	private Date fInSotckCheckDate;

	/** 入库状态 */
	private Integer fInStockStatus;

	/** 本次返修数是否全额计价 0半额计价 1全额计价 */
	private Integer fIsFull;

	/** 制单人 */
	private Integer fBiller;

	/** 制单人 */
	private String fBillerName;

	/** 工序合并码 */
	private String fMergeCode;

	/** 是否为合并工序的完工单 */
	private Integer fIsOperMerge;

	/** 派工单id */
	private Integer fDisPathId;

	/** 合并工序报工的末道工序 */
	private Integer fIsLastEnd;

	/** 上道工序的完工id(只针对合并工序报工有效) */
	private Integer fUpEndWorkId;

	/** 辅助完工表id(只针对合并工序报工有效) */
	private Integer fAuxEndWorkId;

	/** 工废不记个人(其他因素导致的工废) */
	private Double fScrapNotMeQty;

	/** 工废不记个人原始数据备份(其他因素导致的工废) */
	private Double fScrapNotMeQtyBak;

	/** 审批时间 */
	private Date fApprovalTime;

	/** 审批状态 */
	private Integer fApprovalStatue;

	/** 质检工废数 */
	private Double fQcScrapQty;

	/** 质检料废数 */
	private Double fQcForitemQty;

	/** 质检料废百分比 */
	private Double fQcForitemPercent;

	/** 质检次品数 */
	private Double fQcOthQty;

	/** 质检良品数 */
	private Double fQcPassQty;

	/** 审核人 */
	private Integer fCheckerID;

	/** 完工时计数 */
	private Integer fTotal;

	/** 任务单id */
	private Integer fIcmoId;

	/** 入库数量 */
	private Double fInStockQty;

	/** 试车数据id */
	private Long fTrialRunId;

	/** 试车报工时产生的报工数量（虚数，只反应到派工单的fQty里） */
	private Double fTrialRunQty;

	private Date fQcDate;

	public String getfChartNumber() {
		return fChartNumber;
	}

	public void setfChartNumber(String fChartNumber) {
		this.fChartNumber = fChartNumber;
	}

	/** 工序流转卡id */
	private Integer fCardId;

	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public Integer getfStartWorkId() {
		return fStartWorkId;
	}

	public void setfStartWorkId(Integer fStartWorkId) {
		this.fStartWorkId = fStartWorkId;
	}

	public Date getfDate() {
		return fDate;
	}

	public void setfDate(Date fDate) {
		this.fDate = fDate;
	}

	public Integer getfWorktime() {
		return fWorktime;
	}

	public void setfWorktime(Integer fWorktime) {
		this.fWorktime = fWorktime;
	}

	public Double getfQty() {
		return fQty;
	}

	public void setfQty(Double fQty) {
		this.fQty = fQty;
	}

	public Double getfAuxOkQty() {
		return fAuxOkQty;
	}

	public void setfAuxOkQty(Double fAuxOkQty) {
		this.fAuxOkQty = fAuxOkQty;
	}

	public Double getfPassQty() {
		return fPassQty;
	}

	public void setfPassQty(Double fPassQty) {
		this.fPassQty = fPassQty;
	}

	public Double getfScrapQty() {
		return fScrapQty;
	}

	public void setfScrapQty(Double fScrapQty) {
		this.fScrapQty = fScrapQty;
	}

	public Double getfForitemQty() {
		return fForitemQty;
	}

	public void setfForitemQty(Double fForitemQty) {
		this.fForitemQty = fForitemQty;
	}

	public Double getfQtyLost() {
		return fQtyLost;
	}

	public void setfQtyLost(Double fQtyLost) {
		this.fQtyLost = fQtyLost;
	}

	public Double getfReworkQty() {
		return fReworkQty;
	}

	public void setfReworkQty(Double fReworkQty) {
		this.fReworkQty = fReworkQty;
	}

	public Double getfOthQty() {
		return fOthQty;
	}

	public void setfOthQty(Double fOthQty) {
		this.fOthQty = fOthQty;
	}

	public Double getfRestructQty() {
		return fRestructQty;
	}

	public void setfRestructQty(Double fRestructQty) {
		this.fRestructQty = fRestructQty;
	}

	public Integer getfClosed() {
		return fClosed;
	}

	public void setfClosed(Integer fClosed) {
		this.fClosed = fClosed;
	}

	public Date getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}

	public Integer getIsStorage() {
		return isStorage;
	}

	public void setIsStorage(Integer isStorage) {
		this.isStorage = isStorage;
	}

	public Integer getfWorkType() {
		return fWorkType;
	}

	public void setfWorkType(Integer fWorkType) {
		this.fWorkType = fWorkType;
	}

	public String getfWorker() {
		return fWorker;
	}

	public void setfWorker(String fWorker) {
		this.fWorker = fWorker;
	}

	public Integer getfQcStatus() {
		return fQcStatus;
	}

	public void setfQcStatus(Integer fQcStatus) {
		this.fQcStatus = fQcStatus;
	}

	public String getfNote() {
		return fNote;
	}

	public void setfNote(String fNote) {
		this.fNote = fNote;
	}

	public String getfCode() {
		return fCode;
	}

	public void setfCode(String fCode) {
		this.fCode = fCode;
	}

	public String getfNumber() {
		return fNumber;
	}

	public void setfNumber(String fNumber) {
		this.fNumber = fNumber;
	}

	public String getfName() {
		return fName;
	}

	public void setfName(String fName) {
		this.fName = fName;
	}

	public String getfModel() {
		return fModel;
	}

	public void setfModel(String fModel) {
		this.fModel = fModel;
	}

	public Integer getfOperSN() {
		return fOperSN;
	}

	public void setfOperSN(Integer fOperSN) {
		this.fOperSN = fOperSN;
	}

	public String getfOper() {
		return fOper;
	}

	public void setfOper(String fOper) {
		this.fOper = fOper;
	}

	public String getfWorkerName() {
		return fWorkerName;
	}

	public void setfWorkerName(String fWorkerName) {
		this.fWorkerName = fWorkerName;
	}

	public Integer getfWorkShopId() {
		return fWorkShopId;
	}

	public void setfWorkShopId(Integer fWorkShopId) {
		this.fWorkShopId = fWorkShopId;
	}

	public Integer getfIsOperInStock() {
		return fIsOperInStock;
	}

	public void setfIsOperInStock(Integer fIsOperInStock) {
		this.fIsOperInStock = fIsOperInStock;
	}

	public String getfBillNo() {
		return fBillNo;
	}

	public void setfBillNo(String fBillNo) {
		this.fBillNo = fBillNo;
	}

	public Integer getfIsLastOper() {
		return fIsLastOper;
	}

	public void setfIsLastOper(Integer fIsLastOper) {
		this.fIsLastOper = fIsLastOper;
	}

	public Integer getfInStockCheckId() {
		return fInStockCheckId;
	}

	public void setfInStockCheckId(Integer fInStockCheckId) {
		this.fInStockCheckId = fInStockCheckId;
	}

	public Date getfInSotckCheckDate() {
		return fInSotckCheckDate;
	}

	public void setfInSotckCheckDate(Date fInSotckCheckDate) {
		this.fInSotckCheckDate = fInSotckCheckDate;
	}

	public Integer getfInStockStatus() {
		return fInStockStatus;
	}

	public void setfInStockStatus(Integer fInStockStatus) {
		this.fInStockStatus = fInStockStatus;
	}

	public Integer getfIsFull() {
		return fIsFull;
	}

	public void setfIsFull(Integer fIsFull) {
		this.fIsFull = fIsFull;
	}

	public Integer getfBiller() {
		return fBiller;
	}

	public void setfBiller(Integer fBiller) {
		this.fBiller = fBiller;
	}

	public String getfBillerName() {
		return fBillerName;
	}

	public void setfBillerName(String fBillerName) {
		this.fBillerName = fBillerName;
	}

	public Integer getfCardId() {
		return fCardId;
	}

	public void setfCardId(Integer fCardId) {
		this.fCardId = fCardId;
	}

	public String getfMergeCode() {
		return fMergeCode;
	}

	public void setfMergeCode(String fMergeCode) {
		this.fMergeCode = fMergeCode;
	}

	public Integer getfIsOperMerge() {
		return fIsOperMerge;
	}

	public void setfIsOperMerge(Integer fIsOperMerge) {
		this.fIsOperMerge = fIsOperMerge;
	}

	public Integer getfDisPathId() {
		return fDisPathId;
	}

	public void setfDisPathId(Integer fDisPathId) {
		this.fDisPathId = fDisPathId;
	}

	public Integer getfIsLastEnd() {
		return fIsLastEnd;
	}

	public void setfIsLastEnd(Integer fIsLastEnd) {
		this.fIsLastEnd = fIsLastEnd;
	}

	public Integer getfUpEndWorkId() {
		return fUpEndWorkId;
	}

	public void setfUpEndWorkId(Integer fUpEndWorkId) {
		this.fUpEndWorkId = fUpEndWorkId;
	}

	public Integer getfAuxEndWorkId() {
		return fAuxEndWorkId;
	}

	public void setfAuxEndWorkId(Integer fAuxEndWorkId) {
		this.fAuxEndWorkId = fAuxEndWorkId;
	}

	public Double getfScrapNotMeQty() {
		return fScrapNotMeQty;
	}

	public void setfScrapNotMeQty(Double fScrapNotMeQty) {
		this.fScrapNotMeQty = fScrapNotMeQty;
	}

	public String getfMachine() {
		return fMachine;
	}

	public void setfMachine(String fMachine) {
		this.fMachine = fMachine;
	}

	public Double getfScrapNotMeQtyBak() {
		return fScrapNotMeQtyBak;
	}

	public void setfScrapNotMeQtyBak(Double fScrapNotMeQtyBak) {
		this.fScrapNotMeQtyBak = fScrapNotMeQtyBak;
	}

	public Date getfApprovalTime() {
		return fApprovalTime;
	}

	public void setfApprovalTime(Date fApprovalTime) {
		this.fApprovalTime = fApprovalTime;
	}

	public Integer getfApprovalStatue() {
		return fApprovalStatue;
	}

	public void setfApprovalStatue(Integer fApprovalStatue) {
		this.fApprovalStatue = fApprovalStatue;
	}

	public Double getfQcScrapQty() {
		return fQcScrapQty;
	}

	public void setfQcScrapQty(Double fQcScrapQty) {
		this.fQcScrapQty = fQcScrapQty;
	}

	public Double getfQcForitemQty() {
		return fQcForitemQty;
	}

	public void setfQcForitemQty(Double fQcForitemQty) {
		this.fQcForitemQty = fQcForitemQty;
	}

	public Double getfQcForitemPercent() {
		return fQcForitemPercent;
	}

	public void setfQcForitemPercent(Double fQcForitemPercent) {
		this.fQcForitemPercent = fQcForitemPercent;
	}

	public Double getfQcOthQty() {
		return fQcOthQty;
	}

	public void setfQcOthQty(Double fQcOthQty) {
		this.fQcOthQty = fQcOthQty;
	}

	public Double getfQcPassQty() {
		return fQcPassQty;
	}

	public void setfQcPassQty(Double fQcPassQty) {
		this.fQcPassQty = fQcPassQty;
	}

	public Integer getfCheckerID() {
		return fCheckerID;
	}

	public void setfCheckerID(Integer fCheckerID) {
		this.fCheckerID = fCheckerID;
	}

	public Integer getfTotal() {
		return fTotal;
	}

	public void setfTotal(Integer fTotal) {
		this.fTotal = fTotal;
	}

	public Integer getfIcmoId() {
		return fIcmoId;
	}

	public void setfIcmoId(Integer fIcmoId) {
		this.fIcmoId = fIcmoId;
	}

	public Double getfInStockQty() {
		return fInStockQty;
	}

	public void setfInStockQty(Double fInStockQty) {
		this.fInStockQty = fInStockQty;
	}

	public Long getfTrialRunId() {
		return fTrialRunId;
	}

	public void setfTrialRunId(Long fTrialRunId) {
		this.fTrialRunId = fTrialRunId;
	}

	public Date getfQcDate() {
		return fQcDate;
	}

	public void setfQcDate(Date fQcDate) {
		this.fQcDate = fQcDate;
	}

	@Override
	public String toString() {
		return "EndWork [id=" + id + ", fStartWorkId=" + fStartWorkId + ", fDate=" + fDate + ", fWorktime=" + fWorktime
				+ ", fQty=" + fQty + ", fPassQty=" + fPassQty + ", fScrapQty=" + fScrapQty + ", fForitemQty="
				+ fForitemQty + ", fQtyLost=" + fQtyLost + ", fReworkQty=" + fReworkQty + ", fOthQty=" + fOthQty
				+ ", fRestructQty=" + fRestructQty + ", fAuxOkQty=" + fAuxOkQty + ", fClosed=" + fClosed
				+ ", updateTime=" + updateTime + ", isStorage=" + isStorage + ", fWorkType=" + fWorkType + ", fWorker="
				+ fWorker + ", fChartNumber=" + fChartNumber + ", fQcStatus=" + fQcStatus + ", fNote=" + fNote
				+ ", fMachine=" + fMachine + ", fCode=" + fCode + ", fNumber=" + fNumber + ", fName=" + fName
				+ ", fModel=" + fModel + ", fOperSN=" + fOperSN + ", fOper=" + fOper + ", fWorkerName=" + fWorkerName
				+ ", fWorkShopId=" + fWorkShopId + ", fIsOperInStock=" + fIsOperInStock + ", fBillNo=" + fBillNo
				+ ", fIsLastOper=" + fIsLastOper + ", fInStockCheckId=" + fInStockCheckId + ", fInSotckCheckDate="
				+ fInSotckCheckDate + ", fInStockStatus=" + fInStockStatus + ", fIsFull=" + fIsFull + ", fBiller="
				+ fBiller + ", fBillerName=" + fBillerName + ", fMergeCode=" + fMergeCode + ", fIsOperMerge="
				+ fIsOperMerge + ", fDisPathId=" + fDisPathId + ", fIsLastEnd=" + fIsLastEnd + ", fUpEndWorkId="
				+ fUpEndWorkId + ", fAuxEndWorkId=" + fAuxEndWorkId + ", fScrapNotMeQty=" + fScrapNotMeQty
				+ ", fScrapNotMeQtyBak=" + fScrapNotMeQtyBak + ", fApprovalTime=" + fApprovalTime + ", fApprovalStatue="
				+ fApprovalStatue + ", fQcScrapQty=" + fQcScrapQty + ", fQcForitemQty=" + fQcForitemQty
				+ ", fQcForitemPercent=" + fQcForitemPercent + ", fQcOthQty=" + fQcOthQty + ", fQcPassQty=" + fQcPassQty
				+ ", fCheckerID=" + fCheckerID + ", fTotal=" + fTotal + ", fIcmoId=" + fIcmoId + ", fInStockQty="
				+ fInStockQty + ", fTrialRunId=" + fTrialRunId + ", fTrialRunQty=" + fTrialRunQty + ", fQcDate="
				+ fQcDate + ", fCardId=" + fCardId + "]";
	}

	public Double getfTrialRunQty() {
		return fTrialRunQty;
	}

	public void setfTrialRunQty(Double fTrialRunQty) {
		this.fTrialRunQty = fTrialRunQty;
	}

	@Override
	public int compareTo(EndWork o) {
		return this.fOperSN.compareTo(o.getfOperSN());
	}

}